package com.jadcon.bedbreakfast.domain;

import java.util.List;

import org.springframework.security.access.annotation.Secured;
import org.springframework.transaction.annotation.Transactional;

public interface CustomerService {
	
	@Secured("ROLE_VIEW_CUSTOMER")
	List<Customer> getCustomerList();
	List<Customer> findByID(int id);
	List<Customer> findByName(String name);
	Customer findByUsername(String username);
	List<State> getStateList();
	Boolean usernameAvailable(Customer customer);

	@Transactional
	void save(Customer customer);

	@Transactional
	void delete(int id);
}
